using AiQiuQuan.Sport.Model.Models;
using AiQiuQuan.Sport.Core;

namespace AiQiuQuan.Sport.WebApi.Services
{
    /// <summary>
    /// 广告管理
    /// </summary>
    public interface IAdvertisementService : ITransientDependency
    {
        /// <summary>
        /// 查询
        /// </summary>
        Task<AdvertisementDto> GetAsync(Guid id);

        /// <summary>
        /// 查询
        /// </summary>
        Task<AdvertisementDto> QueryAsync(AdvertisementQueryRequestDto request);

        /// <summary>
        /// 分页列表
        /// </summary>
        Task<PageResult<AdvertisementDto>> PageListAsync(AdvertisementPageRequestDto request);

        /// <summary>
        /// 新增
        /// </summary>
        Task<UnaryResult> AddAsync(AdvertisementAddDto model);

        /// <summary>
        /// 修改
        /// </summary>
        Task<UnaryResult> UpdateAsync(AdvertisementUpdateDto model);

        /// <summary>
        /// 删除
        /// </summary>
        Task<UnaryResult> DeleteAsync(Guid id);
    }
}
